package com.kun;

import com.kun.bean.Person;
import com.kun.config.MainConfig;
import org.springframework.context.annotation.AnnotationConfigApplicationContext;

/**
 * @author fangkun
 * @create 2022-04-24-16:34
 */
public class MyTest {

    public static void main(String[] args) {

        AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext(MainConfig.class);
        Person person = context.getBean(Person.class);
        System.out.println(person);

        // Person这个类型的组件在IOC容器中的名字是什么呢？
        /**
         * 如果没有在@Bean注解中明确指定bean的名称，那么就会使用当前方法的名称来作为bean的名称；
         * 如果在@Bean注解中明确指定了bean的名称，那么就会使用@Bean注解中指定的名称来作为bean的名称。
         *
         */
        String[] namesForType = context.getBeanNamesForType(Person.class);
        for (String name : namesForType) {
            System.out.println(name);
        }

    }
}
